{ "cells": [ { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "# Building Gene Regulatory Networks with BioCRNpyler\n", "### _William Poole_\n", "\n", "In this notebook, we will use RegulatedPromoter and CombinatorialPromoter to model Gene Regulation via Transcription Factors.\n", "\n", "_Note: For this notebook to function, you need the default_parameter.txt file in the same folder as the notebook._" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Modeling Gene Regulation by a Single Transcription Factor\n", "In biology, it is very common for a transcription factor to turn on or off promoter. BioCRNpyler has a number of Promoter Components to do this.\n", "* RegulatedPromoter: A list of regulators each bind individually to turn a Promoter ON or OFF (No Combinatorial Logic)\n", "* RepressiblePromoter: A single repressor modelled with a hill function\n", "* ActivatablePromoter: A single activator modeled with a hill function\n", "\n", "In the next example, we will produce and compare the outputs of these kinds of promoters." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Example 1: ActivatablePromoter\n", "A very simple Promoter Component modelled with a hill function. However, this class is not able to accurately capture the binding of Machinery like RNAP and shouldn't be used with Mixtures that include machinery." ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "slideshow": { "slide_type": "skip" }, "tags": [] }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Species(N = 4) = {\n", "small_molecule[activator] (@ 0), rna[activatable_assembly] (@ 0), dna[activatable_assembly] (@ 0), A (@ 0), \n", "}\n", "\n", "Reactions (4) = [\n", "0. dna[activatable_assembly] --> dna[activatable_assembly]+rna[activatable_assembly]\n", " Kf = k dna[activatable_assembly] small_molecule[activator]^n / ( K^n + small_molecule[activator]^n )\n", " k=1.0\n", " found_key=(mech=None, partid=None, name=k).\n", " search_key=(mech=positivehill_transcription, partid=P_activtable_activator, name=k).\n", " K=20\n", " found_key=(mech=None, partid=None, name=K).\n", " search_key=(mech=positivehill_transcription, partid=P_activtable_activator, name=K).\n", " n=4\n", " found_key=(mech=None, partid=None, name=n).\n", " search_key=(mech=positivehill_transcription, partid=P_activtable_activator, name=n).\n", "\n", "1. dna[activatable_assembly] --> dna[activatable_assembly]+rna[activatable_assembly]\n", " Kf=k_forward * dna_activatable_assembly\n", " k_forward=0.01\n", " found_key=(mech=None, partid=None, name=kleak).\n", " search_key=(mech=positivehill_transcription, partid=P_activtable_activator, name=kleak).\n", "\n", "2. rna[activatable_assembly] --> rna[activatable_assembly]+A\n", " Kf=k_forward * rna_activatable_assembly\n", " k_forward=0.25\n", " found_key=(mech=simple_translation, partid=None, name=ktl).\n", " search_key=(mech=simple_translation, partid=Strong, name=ktl).\n", "\n", "3. rna[activatable_assembly] --> \n", " Kf=k_forward * rna_activatable_assembly\n", " k_forward=0.001\n", " found_key=(mech=rna_degredation, partid=None, name=kdil).\n", " search_key=(mech=rna_degredation, partid=rna_activatable_assembly, name=kdil).\n", "\n", "]\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\biocrnpyler-1.1.0-py3.7.egg\\biocrnpyler\\parameter.py:507: UserWarning: parameter file contains no unit column! Please add a column named ['unit', 'units'].\n" ] } ], "source": [ "from biocrnpyler import *\n", "\n", "#ActivatedPromoter Example\n", "activator = Species(\"activator\", material_type = \"small_molecule\")\n", "S_A = Species(\"A\")\n", "\n", "#Create a custom set of parameters\n", "hill_parameters = {\"k\":1.0, \"n\":4, \"K\":20, \"kleak\":.01}\n", "#By Loading custom parameters into the promoter, we override the default parameters of the Mixture\n", "P_activatable = ActivatablePromoter(\"P_activtable\", activator = activator, leak = True, parameters = hill_parameters)\n", "\n", "#Create a DNA assembly \"reporter\" with P_activatable for its promoter\n", "activatable_assembly = DNAassembly(name=\"activatable_assembly\", promoter=P_activatable, rbs=\"Strong\", protein = S_A)\n", "\n", "M = SimpleTxTlExtract(name=\"SimpleTxTl\", parameter_file = \"default_parameters.txt\", components=[activatable_assembly])\n", "\n", "CRN = M.compile_crn();\n", "\n", "print(CRN.pretty_print(show_rates = True, show_keys = True))" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "slideshow": { "slide_type": "skip" }, "tags": [] }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\ipykernel\\ipkernel.py:287: DeprecationWarning: `should_run_async` will not call `transform_cell` automatically in the future. Please pass the result to `transformed_cell` argument and any exception that happen during thetransform in `preprocessing_exc_tuple` in IPython 7.17 and above.\n", " and should_run_async(code)\n" ] }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "#Titrate the activator and plot the result\n", "try:\n", " import bioscrape\n", " import matplotlib.pyplot as plt\n", "except ModuleNotFoundError:\n", " print('please install the plotting libraries: pip install biocrnpyler[all]')\n", "else:\n", " %matplotlib inline\n", " from biocrnpyler import *\n", " import numpy as np\n", " import pandas as pd\n", " \n", " for a_c in np.linspace(0, 50, 5):\n", " x0 = {activatable_assembly.dna:1, activator:a_c}\n", " timepoints = np.linspace(0, 100, 100)\n", " R = CRN.simulate_with_bioscrape_via_sbml(timepoints, initial_condition_dict = x0)\n", " plt.plot(R[\"time\"], R[str(S_A)], label = \"[activator]=\"+str(a_c))\n", "\n", " plt.ylabel(f\"[{S_A}]\")\n", " plt.legend()" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Example 2: RepressiblePromoter\n", "A very simple Promoter Component modelled with a hill function. However, this class is not able to accurately capture the binding of Machinery like RNAP and shouldn't be used with Mixtures that include machinery." ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "slideshow": { "slide_type": "subslide" }, "tags": [] }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Species(N = 4) = {\n", "protein[reporter] (@ 0), rna[reporter] (@ 0), dna[reporter] (@ 0), A (@ 0), \n", "}\n", "\n", "Reactions (4) = [\n", "0. dna[reporter] --> dna[reporter]+rna[reporter]\n", " Kf = k dna[reporter] / ( K^n + A^4 )\n", " k=1.0\n", " found_key=(mech=None, partid=None, name=k).\n", " search_key=(mech=negativehill_transcription, partid=P_repressible_A, name=k).\n", " K=20\n", " found_key=(mech=None, partid=None, name=K).\n", " search_key=(mech=negativehill_transcription, partid=P_repressible_A, name=K).\n", " n=4\n", " found_key=(mech=None, partid=None, name=n).\n", " search_key=(mech=negativehill_transcription, partid=P_repressible_A, name=n).\n", "\n", "1. dna[reporter] --> dna[reporter]+rna[reporter]\n", " Kf=k_forward * dna_reporter\n", " k_forward=0.01\n", " found_key=(mech=None, partid=None, name=kleak).\n", " search_key=(mech=negativehill_transcription, partid=P_repressible_A, name=kleak).\n", "\n", "2. rna[reporter] --> rna[reporter]+protein[reporter]\n", " Kf=k_forward * rna_reporter\n", " k_forward=0.25\n", " found_key=(mech=simple_translation, partid=None, name=ktl).\n", " search_key=(mech=simple_translation, partid=Strong, name=ktl).\n", "\n", "3. rna[reporter] --> \n", " Kf=k_forward * rna_reporter\n", " k_forward=0.001\n", " found_key=(mech=rna_degredation, partid=None, name=kdil).\n", " search_key=(mech=rna_degredation, partid=rna_reporter, name=kdil).\n", "\n", "]\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\ipykernel\\ipkernel.py:287: DeprecationWarning: `should_run_async` will not call `transform_cell` automatically in the future. Please pass the result to `transformed_cell` argument and any exception that happen during thetransform in `preprocessing_exc_tuple` in IPython 7.17 and above.\n", " and should_run_async(code)\n", "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\biocrnpyler-1.1.0-py3.7.egg\\biocrnpyler\\parameter.py:507: UserWarning: parameter file contains no unit column! Please add a column named ['unit', 'units'].\n" ] } ], "source": [ "#ActivatedPromoter Example\n", "repressor = S_A #defined in the previous example\n", "reporter = Species(\"reporter\", material_type = \"protein\")\n", "\n", "#Create a custom set of parameters\n", "hill_parameters = {\"k\":1.0, \"n\":4, \"K\":20, \"kleak\":.01}\n", "#By Loading custom parameters into the promoter, we override the default parameters of the Mixture\n", "P_repressible = RepressiblePromoter(\"P_repressible\", repressor = repressor, leak = True, parameters = hill_parameters)\n", "\n", "#Create a DNA assembly \"reporter\" with P_activatable for its promoter\n", "repressible_assembly = DNAassembly(name=\"reporter\", promoter=P_repressible, rbs=\"Strong\", protein = reporter)\n", "\n", "M = SimpleTxTlExtract(name=\"SimpleTxTl\", parameter_file = \"default_parameters.txt\", components=[repressible_assembly])\n", "\n", "CRN = M.compile_crn()\n", "\n", "print(CRN.pretty_print(show_rates = True, show_keys = True))" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "slideshow": { "slide_type": "skip" } }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\ipykernel\\ipkernel.py:287: DeprecationWarning: `should_run_async` will not call `transform_cell` automatically in the future. Please pass the result to `transformed_cell` argument and any exception that happen during thetransform in `preprocessing_exc_tuple` in IPython 7.17 and above.\n", " and should_run_async(code)\n" ] }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "#Titrate the repressor and plot the result\n", "try:\n", " import bioscrape\n", "except ModuleNotFoundError:\n", " print('please install the plotting libraries: pip install biocrnpyler[all]')\n", "else:\n", " import numpy as np\n", " import pylab as plt\n", " import pandas as pd\n", "\n", " for r_c in np.linspace(0, 50, 5):\n", " x0 = {repressible_assembly.dna:1, repressor:r_c}\n", " timepoints = np.linspace(0, 100, 100)\n", " R = CRN.simulate_with_bioscrape_via_sbml(timepoints, initial_condition_dict = x0)\n", " plt.plot(R[\"time\"], R[str(reporter)], label = f\"[{str(S_A)}]={r_c}\")\n", "\n", " plt.ylabel(\"[B]\")\n", " plt.legend()" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Example 3: A Simple Genetic Regulatory Network\n", "In this example, the activatable_assembly will produce a repressor that represses the repressable_assembly. Notice that activatable_assembly already procues the repressor of the RepressablePromoter...so this is easy!" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "slideshow": { "slide_type": "fragment" }, "tags": [] }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\ipykernel\\ipkernel.py:287: DeprecationWarning: `should_run_async` will not call `transform_cell` automatically in the future. Please pass the result to `transformed_cell` argument and any exception that happen during thetransform in `preprocessing_exc_tuple` in IPython 7.17 and above.\n", " and should_run_async(code)\n", "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\biocrnpyler-1.1.0-py3.7.egg\\biocrnpyler\\parameter.py:507: UserWarning: parameter file contains no unit column! Please add a column named ['unit', 'units'].\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Species(N = 7) = {\n", "protein[reporter] (@ 0), rna[reporter] (@ 0), dna[reporter] (@ 0), small_molecule[activator] (@ 0), rna[activatable_assembly] (@ 0), dna[activatable_assembly] (@ 0), A (@ 0), \n", "}\n", "\n", "Reactions (8) = [\n", "0. dna[reporter] --> dna[reporter]+rna[reporter]\n", " Kf = k dna[reporter] / ( K^n + A^4 )\n", " k=1.0\n", " K=20\n", " n=4\n", "\n", "1. dna[reporter] --> dna[reporter]+rna[reporter]\n", " Kf=k_forward * dna_reporter\n", " k_forward=0.01\n", "\n", "2. rna[reporter] --> rna[reporter]+protein[reporter]\n", " Kf=k_forward * rna_reporter\n", " k_forward=0.25\n", "\n", "3. dna[activatable_assembly] --> dna[activatable_assembly]+rna[activatable_assembly]\n", " Kf = k dna[activatable_assembly] small_molecule[activator]^n / ( K^n + small_molecule[activator]^n )\n", " k=1.0\n", " K=20\n", " n=4\n", "\n", "4. dna[activatable_assembly] --> dna[activatable_assembly]+rna[activatable_assembly]\n", " Kf=k_forward * dna_activatable_assembly\n", " k_forward=0.01\n", "\n", "5. rna[activatable_assembly] --> rna[activatable_assembly]+A\n", " Kf=k_forward * rna_activatable_assembly\n", " k_forward=0.25\n", "\n", "6. rna[reporter] --> \n", " Kf=k_forward * rna_reporter\n", " k_forward=0.001\n", "\n", "7. rna[activatable_assembly] --> \n", " Kf=k_forward * rna_activatable_assembly\n", " k_forward=0.001\n", "\n", "]\n" ] }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "M = SimpleTxTlExtract(name=\"SimpleTxTl\", parameter_file = \"default_parameters.txt\", components=[repressible_assembly, activatable_assembly])\n", "CRN = M.compile_crn()\n", "print(CRN.pretty_print(show_rates = True, show_keys = False))\n", "\n", "#Titrate the activator, which in turn will automatically produce the repressor\n", "try:\n", " import bioscrape \n", "except ModuleNotFoundError:\n", " print('please install the plotting libraries: pip install biocrnpyler[all]')\n", "else:\n", " import numpy as np\n", " import pylab as plt\n", " import pandas as pd\n", " plt.figure(figsize = (10, 6))\n", " ax1, ax2 = plt.subplot(121), plt.subplot(122)#Create two subplots\n", " for a_c in np.linspace(0, 50, 5):\n", " x0 = {activatable_assembly.dna:1, repressible_assembly.dna:1, activator:a_c}\n", " timepoints = np.linspace(0, 100, 100)\n", " R = CRN.simulate_with_bioscrape_via_sbml(timepoints, initial_condition_dict = x0)\n", " plt.sca(ax1)\n", " plt.plot(R[\"time\"], R[str(S_A)], label = \"[activator]=\"+str(a_c))\n", " plt.sca(ax2)\n", " plt.plot(R[\"time\"], R[str(reporter)], label = \"[activator]=\"+str(a_c))\n", "\n", " plt.sca(ax1)\n", " plt.ylabel(\"activatable assembly output: [A]\")\n", " plt.legend()\n", " plt.sca(ax2)\n", " plt.ylabel(\"repressable assembly output: [B]\")\n", " plt.legend()" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Example 4: RegulatedPromoter\n", "In the below example, a CRN from RegulatedPromoter is generated. This Component models the detailed binding of regulators to the DNA and has seperate transcription rates for each regulator. It is suitable for complex models that include machinery. Regulators do not act Combinatorically." ] }, { "cell_type": "code", "execution_count": 26, "metadata": { "slideshow": { "slide_type": "subslide" }, "tags": [] }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Species(N = 16) = {\n", "protein[Ribo] (@ 24.0), protein[RNAase] (@ 6.0), protein[RNAP] (@ 3.0), protein[reporter] (@ 0), rna[reporter] (@ 0), dna[reporter] (@ 0), complex[protein[Ribo]:rna[reporter]] (@ 0), complex[protein[RNAase]:rna[reporter]] (@ 0), complex[dna[reporter]:2x_protein[R]] (@ 0), complex[dna[reporter]:protein[RNAP]] (@ 0), complex[dna[reporter]:2x_protein[A]] (@ 0), complex[complex[protein[Ribo]:rna[reporter]]:protein[RNAase]] (@ 0), complex[complex[dna[reporter]:2x_protein[R]]:protein[RNAP]] (@ 0), complex[complex[dna[reporter]:2x_protein[A]]:protein[RNAP]] (@ 0), protein[R] (@ 0), protein[A] (@ 0), \n", "}\n", "\n", "Reactions (14) = [\n", "0. dna[reporter]+protein[RNAP] <--> complex[dna[reporter]:protein[RNAP]]\n", " Kf=k_forward * dna_reporter * protein_RNAP\n", " Kr=k_reverse * complex_dna_reporter_protein_RNAP_\n", " k_forward=2.0\n", " k_reverse=100\n", "\n", "1. complex[dna[reporter]:protein[RNAP]] --> dna[reporter]+rna[reporter]+protein[RNAP]\n", " Kf=k_forward * complex_dna_reporter_protein_RNAP_\n", " k_forward=1.0\n", "\n", "2. 2protein[A]+dna[reporter] <--> complex[dna[reporter]:2x_protein[A]]\n", " Kf=k_forward * protein_A^2 * dna_reporter\n", " Kr=k_reverse * complex_dna_reporter_protein_A_2x_\n", " k_forward=100.0\n", " k_reverse=10.0\n", "\n", "3. complex[dna[reporter]:2x_protein[A]]+protein[RNAP] <--> complex[complex[dna[reporter]:2x_protein[A]]:protein[RNAP]]\n", " Kf=k_forward * complex_dna_reporter_protein_A_2x_ * protein_RNAP\n", " Kr=k_reverse * complex_complex_dna_reporter_protein_A_2x__protein_RNAP_\n", " k_forward=100\n", " k_reverse=1.0\n", "\n", "4. complex[complex[dna[reporter]:2x_protein[A]]:protein[RNAP]] --> complex[dna[reporter]:2x_protein[A]]+rna[reporter]+protein[RNAP]\n", " Kf=k_forward * complex_complex_dna_reporter_protein_A_2x__protein_RNAP_\n", " k_forward=1.0\n", "\n", "5. 2protein[R]+dna[reporter] <--> complex[dna[reporter]:2x_protein[R]]\n", " Kf=k_forward * protein_R^2 * dna_reporter\n", " Kr=k_reverse * complex_dna_reporter_protein_R_2x_\n", " k_forward=100.0\n", " k_reverse=10.0\n", "\n", "6. complex[dna[reporter]:2x_protein[R]]+protein[RNAP] <--> complex[complex[dna[reporter]:2x_protein[R]]:protein[RNAP]]\n", " Kf=k_forward * complex_dna_reporter_protein_R_2x_ * protein_RNAP\n", " Kr=k_reverse * complex_complex_dna_reporter_protein_R_2x__protein_RNAP_\n", " k_forward=1\n", " k_reverse=100.0\n", "\n", "7. complex[complex[dna[reporter]:2x_protein[R]]:protein[RNAP]] --> complex[dna[reporter]:2x_protein[R]]+rna[reporter]+protein[RNAP]\n", " Kf=k_forward * complex_complex_dna_reporter_protein_R_2x__protein_RNAP_\n", " k_forward=1.0\n", "\n", "8. rna[reporter]+protein[Ribo] <--> complex[protein[Ribo]:rna[reporter]]\n", " Kf=k_forward * rna_reporter * protein_Ribo\n", " Kr=k_reverse * complex_protein_Ribo_rna_reporter_\n", " k_forward=100.0\n", " k_reverse=10.0\n", "\n", "9. complex[protein[Ribo]:rna[reporter]] --> rna[reporter]+protein[reporter]+protein[Ribo]\n", " Kf=k_forward * complex_protein_Ribo_rna_reporter_\n", " k_forward=0.05\n", "\n", "10. rna[reporter]+protein[RNAase] <--> complex[protein[RNAase]:rna[reporter]]\n", " Kf=k_forward * rna_reporter * protein_RNAase\n", " Kr=k_reverse * complex_protein_RNAase_rna_reporter_\n", " k_forward=100.0\n", " k_reverse=10.0\n", "\n", "11. complex[protein[RNAase]:rna[reporter]] --> protein[RNAase]\n", " Kf=k_forward * complex_protein_RNAase_rna_reporter_\n", " k_forward=0.001\n", "\n", "12. complex[protein[Ribo]:rna[reporter]]+protein[RNAase] <--> complex[complex[protein[Ribo]:rna[reporter]]:protein[RNAase]]\n", " Kf=k_forward * complex_protein_Ribo_rna_reporter_ * protein_RNAase\n", " Kr=k_reverse * complex_complex_protein_Ribo_rna_reporter__protein_RNAase_\n", " k_forward=100.0\n", " k_reverse=10.0\n", "\n", "13. complex[complex[protein[Ribo]:rna[reporter]]:protein[RNAase]] --> protein[Ribo]+protein[RNAase]\n", " Kf=k_forward * complex_complex_protein_Ribo_rna_reporter__protein_RNAase_\n", " k_forward=0.001\n", "\n", "]\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\ipykernel\\ipkernel.py:287: DeprecationWarning: `should_run_async` will not call `transform_cell` automatically in the future. Please pass the result to `transformed_cell` argument and any exception that happen during thetransform in `preprocessing_exc_tuple` in IPython 7.17 and above.\n", " and should_run_async(code)\n", "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\biocrnpyler-1.1.0-py3.7.egg\\biocrnpyler\\parameter.py:507: UserWarning: parameter file contains no unit column! Please add a column named ['unit', 'units'].\n" ] } ], "source": [ "#1 Regulated Promoter Needs lots of parameters!\n", "component_parameters = {\n", " #Promoter Activator Binding Parameters. Note the part_id = [promoter_name]_[regulator_name]\n", " ParameterKey(mechanism = 'binding', part_id = 'regulated_promoter_A', name = 'kb'):100, #Promoter - Activator Binding\n", " ParameterKey(mechanism = 'binding', part_id = \"regulated_promoter_A\", name = 'ku'):5.0, #Unbinding\n", " ParameterKey(mechanism = 'binding', part_id = \"regulated_promoter_A\", name = 'cooperativity'):4.0, #Cooperativity\n", " \n", " #Activated Promoter Transcription. Note the part_id = [promoter_name]_[regulator_name]\n", " #These regulate RNAP binding to an activated promoter and transcription\n", " ParameterKey(mechanism = 'transcription', part_id = 'regulated_promoter_A', name = 'kb'):100, #Promoter - Activator Binding\n", " ParameterKey(mechanism = 'transcription', part_id = \"regulated_promoter_A\", name = 'ku'):1.0, #Unbinding\n", " ParameterKey(mechanism = 'transcription', part_id = 'regulated_promoter_A', name = \"ktx\"): 1., #Transcription Rate\n", " \n", " #Promoter Repressor Binding Parameters. Note the part_id = [promoter_name]_[regulator_name]\n", " ParameterKey(mechanism = 'binding', part_id = 'regulated_promoter_R', name = 'kb'):100,\n", " ParameterKey(mechanism = 'binding', part_id = \"regulated_promoter_R\", name = 'ku'):5.0,\n", " ParameterKey(mechanism = 'binding', part_id = \"regulated_promoter_R\", name = 'cooperativity'):4.0,\n", " \n", " #Repressed Promoter Transcription. Note the part_id = [promoter_name]_[regulator_name]\n", " #These regulate RNAP binding to a repressed promoter and transcription\n", " ParameterKey(mechanism = 'transcription', part_id = 'regulated_promoter_R', name = 'kb'):1,\n", " ParameterKey(mechanism = 'transcription', part_id = \"regulated_promoter_R\", name = 'ku'):100.0,\n", " ParameterKey(mechanism = 'transcription', part_id = 'regulated_promoter_R', name = \"ktx\"): 1.0, #Transcription Rate\n", " \n", " #Leak Parameters for transcription\n", " #These regulate expression of an unbound promoter\n", " ParameterKey(mechanism = 'transcription', part_id = 'regulated_promoter_leak', name = \"kb\"): 2.,\n", " ParameterKey(mechanism = 'transcription', part_id = 'regulated_promoter_leak', name = \"ku\"): 100,\n", " ParameterKey(mechanism = 'transcription', part_id = 'regulated_promoter_leak', name = \"ktx\"): 1.0, #Transcription Rate\n", "}\n", "\n", "repressor = Species(\"R\", material_type = \"protein\")\n", "activator = Species(\"A\", material_type = \"protein\")\n", "reporter = Species(\"reporter\", material_type = \"protein\")\n", "\n", "#Create a RegulatedPromoter Object named \"P_reg\" with regulators \"activator\" and \"repressor\"\n", "#By Loading custom parameters into the promoter, we override the default parameters of the Mixture\n", "P_reg = RegulatedPromoter(\"regulated_promoter\", regulators=[activator, repressor], leak=True, parameters = component_parameters)\n", "\n", "#Create a DNA assembly \"reporter\" with P_reg for its promoter\n", "reg_reporter = DNAassembly(name=\"reporter\", promoter=P_reg, rbs=\"Strong\", protein = reporter)\n", "\n", "#Use a simple TxTl model with dilution\n", "#M = SimpleTxTlDilutionMixture(name=\"e coli\", parameter_file = \"default_parameters.txt\", components=[reg_reporter])\n", "M = TxTlExtract(name=\"e coli extract\", parameter_file = \"default_parameters.txt\", components=[reg_reporter])\n", "\n", "CRN = M.compile_crn()\n", "print(CRN.pretty_print(show_rates = True, show_keys = False))" ] }, { "cell_type": "code", "execution_count": 31, "metadata": { "slideshow": { "slide_type": "skip" }, "tags": [] }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\ipykernel\\ipkernel.py:287: DeprecationWarning: `should_run_async` will not call `transform_cell` automatically in the future. Please pass the result to `transformed_cell` argument and any exception that happen during thetransform in `preprocessing_exc_tuple` in IPython 7.17 and above.\n", " and should_run_async(code)\n" ] }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "#Lets titrate Repressor and Activator - notice the bahvior is not combinatorial\n", "try:\n", " import bioscrape \n", "except ModuleNotFoundError:\n", " print('please install the plotting libraries: pip install biocrnpyler[all]')\n", "else:\n", " import numpy as np\n", " import pylab as plt\n", " import pandas as pd\n", " plt.figure(figsize = (20, 10))\n", " ax1, ax2, ax3 = plt.subplot(131), plt.subplot(132), plt.subplot(133)\n", " titration_list = [0, .05, .1, .5, 1.0, 5.]\n", " N = len(titration_list)\n", " HM = np.zeros((N, N))\n", " for a_ind, a_c in enumerate(titration_list):\n", " for r_ind, r_c in enumerate(titration_list):\n", " x0 = {reg_reporter.dna:.1, repressor:r_c, activator:a_c}\n", " timepoints = np.linspace(0, 1000, 1000)\n", " R = CRN.simulate_with_bioscrape_via_sbml(timepoints, initial_condition_dict = x0)\n", " if a_ind == 0:\n", " plt.sca(ax1)\n", " plt.plot(R[\"time\"], R[str(reporter)], label = \"[A]=\"+str(a_c) +\" [R]=\"+str(r_c))\n", " if r_ind == 0:\n", " plt.sca(ax2)\n", " plt.plot(R[\"time\"], R[str(reporter)], label = \"[A]=\"+str(a_c) +\" [R]=\"+str(r_c))\n", " HM[a_ind, r_ind] = R[str(reporter)][len(timepoints)-1]\n", "\n", " plt.sca(ax1)\n", " plt.title(\"Repressor Titration\")\n", " plt.legend()\n", " plt.sca(ax2)\n", " plt.title(\"Activator Titration\")\n", " plt.legend()\n", " plt.sca(ax3)\n", " plt.title(\"Endpoint Heatmap (log)\")\n", " cb = plt.pcolor(np.log(HM))\n", " plt.colorbar(cb)\n", " plt.xlabel(\"Repressor\")\n", " plt.ylabel(\"Activator\")\n", " plt.xticks(np.arange(.5, N+.5, 1), [str(i) for i in titration_list])\n", " plt.yticks(np.arange(.5, N+.5, 1), [str(i) for i in titration_list])" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Example 5: Induction Model of a Ligand which Activates a Transcription Factor\n", "In many biological circuits, small molecules (ligands) can bind to a transcription factor modulating its functionality. \n", "\n", "In BioCRNpyler, we will model this by creating a ChemicalComplex Component which consists of a Transcription Factor and a ligand. This the ComplexSpecies formed by by binding the transcription will also work as the regulator (activator or repressor) of a regulated promoter. In this example, we will use RepressablePromoter. \n", "\n", "In the activating case, the bound form of the ChemicalComplex will induce gene expression." ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "slideshow": { "slide_type": "subslide" }, "tags": [] }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Species(N = 5) = {\n", "protein[reporter] (@ 0), dna[reporter] (@ 0), complex[ligand[L]:protein[A]] (@ 0), ligand[L] (@ 0), protein[A] (@ 0), \n", "}\n", "\n", "Reactions (7) = [\n", "0. dna[reporter] --> dna[reporter]+protein[reporter]\n", " Kf = k dna[reporter] / ( K^n + complex[ligand[L]:protein[A]]^4 )\n", " k=1.0\n", " K=20\n", " n=4\n", "\n", "1. dna[reporter] --> dna[reporter]+protein[reporter]\n", " Kf=k_forward * dna_reporter\n", " k_forward=0.01\n", "\n", "2. ligand[L]+protein[A] <--> complex[ligand[L]:protein[A]]\n", " Kf=k_forward * ligand_L * protein_A\n", " Kr=k_reverse * complex_ligand_L_protein_A_\n", " k_forward=100.0\n", " k_reverse=10.0\n", "\n", "3. complex[ligand[L]:protein[A]] --> \n", " Kf=k_forward * complex_ligand_L_protein_A_\n", " k_forward=0.001\n", "\n", "4. protein[reporter] --> \n", " Kf=k_forward * protein_reporter\n", " k_forward=0.001\n", "\n", "5. ligand[L] --> \n", " Kf=k_forward * ligand_L\n", " k_forward=0.001\n", "\n", "6. protein[A] --> \n", " Kf=k_forward * protein_A\n", " k_forward=0.001\n", "\n", "]\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\ipykernel\\ipkernel.py:287: DeprecationWarning: `should_run_async` will not call `transform_cell` automatically in the future. Please pass the result to `transformed_cell` argument and any exception that happen during thetransform in `preprocessing_exc_tuple` in IPython 7.17 and above.\n", " and should_run_async(code)\n", "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\biocrnpyler-1.1.0-py3.7.egg\\biocrnpyler\\parameter.py:507: UserWarning: parameter file contains no unit column! Please add a column named ['unit', 'units'].\n" ] } ], "source": [ "\n", "\n", "inactive_repressor = Species(\"A\", material_type = \"protein\")\n", "ligand = Species(\"L\", material_type = \"ligand\")\n", "\n", "#Create a ChemicalComplex to model ligand-inactive_repressor bindning\n", "activatable_repressor = ChemicalComplex([inactive_repressor, ligand])\n", "\n", "#Other Promoters could also be used\n", "P_repressible = RepressiblePromoter(\"P_repressible\", repressor = activatable_repressor.get_species(), leak = True, parameters = hill_parameters)\n", "\n", "#Create a DNA assembly \"reporter\" with P_activatable for its promoter\n", "repressible_assembly = DNAassembly(name=\"reporter\", promoter=P_repressible, rbs=\"Strong\", protein = \"reporter\")\n", "\n", "M = ExpressionDilutionMixture(name=\"ExpressionDilutionMixture\", parameter_file = \"default_parameters.txt\", components=[repressible_assembly, activatable_repressor])\n", "CRN = M.compile_crn();print(CRN.pretty_print(show_rates = True, show_keys = False))" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "slideshow": { "slide_type": "skip" }, "tags": [] }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\ipykernel\\ipkernel.py:287: DeprecationWarning: `should_run_async` will not call `transform_cell` automatically in the future. Please pass the result to `transformed_cell` argument and any exception that happen during thetransform in `preprocessing_exc_tuple` in IPython 7.17 and above.\n", " and should_run_async(code)\n" ] }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "#Lets titrate ligand and repressor\n", "try:\n", " import bioscrape \n", "except ModuleNotFoundError:\n", " print('please install the plotting libraries: pip install biocrnpyler[all]')\n", "else:\n", " import numpy as np\n", " import pylab as plt\n", " import pandas as pd\n", " plt.figure(figsize = (8, 6))\n", " N = 11 #Number of titrations\n", " max_titration = 100\n", " HM = np.zeros((N, N))\n", " for r_ind, R_c in enumerate(np.linspace(0, max_titration, N)):\n", " for l_ind, L_c in enumerate(np.linspace(0, max_titration, N)):\n", " x0 = {repressible_assembly.dna:1, inactive_repressor:R_c, ligand:L_c}\n", " timepoints = np.linspace(0, 1000, 1000)\n", " R = CRN.simulate_with_bioscrape_via_sbml(timepoints, initial_condition_dict = x0)\n", " HM[r_ind, l_ind] = R[\"protein_reporter\"][len(timepoints)-1]\n", "\n", " plt.title(\"Activatable Repressor vs Ligand Endpoint Heatmap\\n Exhibits NOT AND Logic\")\n", " cb = plt.pcolor(HM)\n", " plt.colorbar(cb)\n", " plt.xlabel(\"Ligand\")\n", " plt.ylabel(\"Activatbale Repressor\")\n", " \n", " plt.xticks(np.arange(.5, N+.5, 1), [str(i) for i in np.linspace(0, max_titration, N)])\n", " plt.yticks(np.arange(.5, N+.5, 1), [str(i) for i in np.linspace(0, max_titration, N)])\n", " " ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Example 6: Induction Models of a Ligand which Deactivates a Transcription Factor\n", "In the inactivating case, the unbound transcription factor will activate the gene and the bound form will not." ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "slideshow": { "slide_type": "subslide" }, "tags": [] }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Species(N = 5) = {\n", "protein[reporter] (@ 0), dna[reporter] (@ 0), complex[ligand[L]:protein[A]] (@ 0), ligand[L] (@ 0), protein[A] (@ 0), \n", "}\n", "\n", "Reactions (7) = [\n", "0. dna[reporter] --> dna[reporter]+protein[reporter]\n", " Kf = k dna[reporter] / ( K^n + protein[A]^4 )\n", " k=1.0\n", " K=20\n", " n=4\n", "\n", "1. dna[reporter] --> dna[reporter]+protein[reporter]\n", " Kf=k_forward * dna_reporter\n", " k_forward=0.01\n", "\n", "2. ligand[L]+protein[A] <--> complex[ligand[L]:protein[A]]\n", " Kf=k_forward * ligand_L * protein_A\n", " Kr=k_reverse * complex_ligand_L_protein_A_\n", " k_forward=100.0\n", " k_reverse=10.0\n", "\n", "3. protein[A] --> \n", " Kf=k_forward * protein_A\n", " k_forward=0.001\n", "\n", "4. protein[reporter] --> \n", " Kf=k_forward * protein_reporter\n", " k_forward=0.001\n", "\n", "5. ligand[L] --> \n", " Kf=k_forward * ligand_L\n", " k_forward=0.001\n", "\n", "6. complex[ligand[L]:protein[A]] --> \n", " Kf=k_forward * complex_ligand_L_protein_A_\n", " k_forward=0.001\n", "\n", "]\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\biocrnpyler-1.1.0-py3.7.egg\\biocrnpyler\\parameter.py:507: UserWarning: parameter file contains no unit column! Please add a column named ['unit', 'units'].\n" ] } ], "source": [ "repressor = Species(\"A\", material_type = \"protein\")\n", "ligand = Species(\"L\", material_type = \"ligand\")\n", "\n", "#Create a ChemicalComplex to model ligand-inactive_repressor bindning\n", "inactive_repressor = ChemicalComplex([repressor, ligand])\n", "\n", "#Other Promoters could also be Used\n", "P_repressible = RepressiblePromoter(\"P_repressible\", repressor = repressor, leak = True, parameters = hill_parameters)\n", "\n", "#Create a DNA assembly \"reporter\" with P_activatable for its promoter\n", "repressible_assembly = DNAassembly(name=\"reporter\", promoter=P_repressible, rbs=\"Strong\", protein = \"reporter\")\n", "\n", "M = ExpressionDilutionMixture(name=\"ExpressionDilutionMixture\", parameter_file = \"default_parameters.txt\", components=[repressible_assembly, activatable_repressor])\n", "CRN = M.compile_crn();print(CRN.pretty_print(show_rates = True, show_keys = False))" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "slideshow": { "slide_type": "skip" }, "tags": [] }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\ipykernel\\ipkernel.py:287: DeprecationWarning: `should_run_async` will not call `transform_cell` automatically in the future. Please pass the result to `transformed_cell` argument and any exception that happen during thetransform in `preprocessing_exc_tuple` in IPython 7.17 and above.\n", " and should_run_async(code)\n" ] }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "#Titration of ligand and repressor\n", "try:\n", " import bioscrape \n", "except ModuleNotFoundError:\n", " print('please install the plotting libraries: pip install biocrnpyler[all]')\n", "else:\n", " import numpy as np\n", " import pylab as plt\n", " import pandas as pd\n", " \n", " plt.figure(figsize = (8, 6))\n", " N = 11 #Number of titrations\n", " max_titration = 100\n", " HM = np.zeros((N, N))\n", " for r_ind, R_c in enumerate(np.linspace(0, max_titration, N)):\n", " for l_ind, L_c in enumerate(np.linspace(0, max_titration, N)):\n", " x0 = {repressible_assembly.dna:1, repressor:R_c, ligand:L_c}\n", " timepoints = np.linspace(0, 1000, 1000)\n", " R = CRN.simulate_with_bioscrape_via_sbml(timepoints, initial_condition_dict = x0)\n", " HM[r_ind, l_ind] = R[\"protein_reporter\"][len(timepoints)-1]\n", "\n", " plt.title(\"Deactivatable Repressor vs Ligand Endpoint Heatmap\\nAllows for Tunable Induction\")\n", " cb = plt.pcolor(HM)\n", " plt.colorbar(cb)\n", " plt.xlabel(\"Ligand\")\n", " plt.ylabel(\"Deactivatbale Repressor\")\n", " plt.xticks(np.arange(.5, N+.5, 1), [str(i) for i in np.linspace(0, max_titration, N)])\n", " plt.yticks(np.arange(.5, N+.5, 1), [str(i) for i in np.linspace(0, max_titration, N)])\n", " " ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Example 7: Modeling AND, OR, and XOR Promoters with Combinatorial Promoter\n", "CombinatorialPromoter is a Component designed to model arbitrary combinatorial logic on a promoter. For example, a promoter with 2 transcription factor binding sites can have 4 differents states:\n", "* Nothing bound\n", "* just factor 1 bound\n", "* just factor 2 bound\n", "* factors 1 and 2 bound\n", "\n", "In general, a promoter with $N$ binding sites has up to $2^N$ possible states. Combinatorial promoter enumerates all these states and allows for the modeller to decide which are capable of transcription and which are not. For more details on this class, see the CombinatorialPromoter example ipython notebook in the BioCRNpyler examples folder.\n", "\n", "Below, we will use a Combinatorial Promoter to Produce OR, AND, and XOR logic with two species, $A$ and $B$ by passing in lists of the transcribable combinations of regulators to the tx_capable_list keyword.\n" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "slideshow": { "slide_type": "subslide" }, "tags": [] }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\biocrnpyler-1.1.0-py3.7.egg\\biocrnpyler\\parameter.py:507: UserWarning: parameter file contains no unit column! Please add a column named ['unit', 'units'].\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Species(N = 7) = {\n", "protein[GFP] (@ 0), complex[2x_B:dna[AND]] (@ 0), B (@ 0), complex[2x_A:dna[AND]] (@ 0), complex[2x_A:2x_B:dna[AND]] (@ 0), dna[AND] (@ 0), A (@ 0), \n", "}\n", "\n", "Reactions (8) = [\n", "0. dna[AND] --> dna[AND]+protein[GFP]\n", " Kf=k_forward * dna_AND\n", " k_forward=0.0028125\n", "\n", "1. 2A+dna[AND] <--> complex[2x_A:dna[AND]]\n", " Kf=k_forward * A^2 * dna_AND\n", " Kr=k_reverse * complex_A_2x_dna_AND_\n", " k_forward=100.0\n", " k_reverse=10.0\n", "\n", "2. 2B+dna[AND] <--> complex[2x_B:dna[AND]]\n", " Kf=k_forward * B^2 * dna_AND\n", " Kr=k_reverse * complex_B_2x_dna_AND_\n", " k_forward=100.0\n", " k_reverse=10.0\n", "\n", "3. 2A+complex[2x_B:dna[AND]] <--> complex[2x_A:2x_B:dna[AND]]\n", " Kf=k_forward * A^2 * complex_B_2x_dna_AND_\n", " Kr=k_reverse * complex_A_2x_B_2x_dna_AND_\n", " k_forward=100.0\n", " k_reverse=10.0\n", "\n", "4. 2B+complex[2x_A:dna[AND]] <--> complex[2x_A:2x_B:dna[AND]]\n", " Kf=k_forward * B^2 * complex_A_2x_dna_AND_\n", " Kr=k_reverse * complex_A_2x_B_2x_dna_AND_\n", " k_forward=100.0\n", " k_reverse=10.0\n", "\n", "5. complex[2x_A:2x_B:dna[AND]] --> complex[2x_A:2x_B:dna[AND]]+protein[GFP]\n", " Kf=k_forward * complex_A_2x_B_2x_dna_AND_\n", " k_forward=0.28125\n", "\n", "6. complex[2x_A:dna[AND]] --> complex[2x_A:dna[AND]]+protein[GFP]\n", " Kf=k_forward * complex_A_2x_dna_AND_\n", " k_forward=0.0028125\n", "\n", "7. complex[2x_B:dna[AND]] --> complex[2x_B:dna[AND]]+protein[GFP]\n", " Kf=k_forward * complex_B_2x_dna_AND_\n", " k_forward=0.0028125\n", "\n", "]\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAd8AAAGDCAYAAABqTBrUAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8rg+JYAAAACXBIWXMAAAsTAAALEwEAmpwYAAAoi0lEQVR4nO3de7RlZXnn+++PoiwuKsVFaQQMJhI7xtEiqaMYLzFWokAyLONQAyeRCjFdcRzsoznpkaA5x1tiOnYbTTzJgFMRFIwgihqrbVrBS9rOaEELBOSisVSUKguQi4gSkap6zh9rbrJYrl2Xtfeac829v58x5thzzTn3fJ912ftZ7zvf+b6pKiRJUnv26zoASZKWG5OvJEktM/lKktQyk68kSS0z+UqS1DKTryRJLTP5ShNK8rwkWxfpXD9I8tOLcS5Js8/kq04l+cck9yRZNbL9vUkqydOHtj0xSY387o+S3Jfk+0muTnL26LnGnPfHTbKbW66bzrPbe1X1yKr6xt4c27wuT9zN/t9J8k9jtt+S5FcWEmdznjcl+fuFnkdazky+6kyS44DnAAW8aMwhdwN/tofTvLqqHgUcBfwhcBpwWZLs5nf+c5Ps5pan7nv0kjQ5k6+6dAZwJfBeYP2Y/RcA/y7JL+3pRFX1w6r6RwZJ/JnAr+1rMEmOa2qV65N8O8mdSf5kaP+BTc35niQ3Af/byO/fkuR1SW5qjnlPkgOG9v/7JFuS3J1kU5LHDe17qDbblPG3Sf5bU6u/KsnPNPs+1/zKdU2t/Tf39XkOlfm7SW5uYv1kkp8a2vfXSW4dalF4TrP9ZOD1wG8Otxo0rRB/luR/Ndv/a5LDk7y/OccXmy9buz1/s+9NSS5Ncknz/K9J4hckLSkmX3XpDOD9zfLCJEeO7L8f+HPgrXt7wqr6NrCZQY16Us8GngSsBd6Q5Oea7W8EfqZZXsj4Lwy/1ez7GeBngf8bIMnzgf8EvJxBLf1bwAd2E8NpwJuBQ4EtNK9BVT232f/UptZ+ySRPMMk6Bkn0JcBjgP8JXDx0yBeBE4DDgIuADyU5oKo+weA9uWRMq8FpwCuAo5vn/3ngPc05bmbw+u32/EP71wEfGtr/D0lWTvJcpVlk8lUnkjwb+Cngg1V1NfB14H8fc+j/Bzw+ySn7cPrvMPinPZ//mOR7Q8sFI/vfXFX/UlXXAdcBcwnm5cBbq+ruqroVeNeYc/9NVd1aVXczSJinN9t/Czi/qq6pqgeA1wHPHK4NjvhoVX2hqnYw+HJywu6f8k84aeQ5fg94/ND+VwH/qapubsr4c+CEudpvVf19Vd1VVTuq6i+BVQy+kOzOe6rq61V1L/Dfga9X1aea838IeNrcgXtx/qur6tKqehB4B3AAcNI+vgbSzDL5qivrgcur6s7m8UWMqUk2iepPm2VvHc3gevF83l5Vq4eW0XJvG1q/H3hks/444Nahfd8ac+7R/XNNy48bPr6qfgDc1cQ6znwx7K0rR57jauDbQ/t/CvjrocR8N5C5eJL8x6ZJ+t5m/yHAEXso8/ah9X8Z8/ih57AX53/odayqXcBW/vW1lHrP5KvWJTmQQS3yl5LcluQ24A+Ap85zbe89wGoGTaR7OvexwC8waEZdbNuBY4ceP37MMaP7v9Osf4dBwgMgycHA4cC2RY5xb90K/P5Igj6wqv5Xc/31jxi8R4c2ifteBskZBh3kJrYX54eh1zHJfsAx/OtrKfWeyVddeDGwE3gyg+bUE4CfY5Awzxg9uGm2fCPwx/OdMMlBTcesjwFfAC5b5JgBPgi8LsmhSY4B/sOYY85KckySw4A/AeauyV4MnJnkhAxuhfpz4KqqumWCOG4HFnpP8LkMnsvPAyQ5JMnLmn2PAnYA3wX2T/IG4NEj5R/XJMVJ7On8AL+Q5CVJ9gdeCzzAoHOetCSYfNWF9QyuD367qm6bW4C/AX6r+Yc76mIGNc9Rf5PkPgYJ4a+ADwMnN02V8/mjPPw+3zt3c+ywNzNoOv4mcDnwvjHHXNTs+waD69h/BlBVnwL+nya+7Qw6JJ22l+WOehNwQdNk/PJJTlBVHwXeBnwgyfeBG4C56+qfBD4B/DOD5/sjHt6c/qHm511Jrpmg+D2dHwZfon4TuIdBJ66XNNd/pSUhVQtqQZLUSHIL8HtNotWEkrwJeGJV/XbXsUjTYs1XkqSWmXwlSWqZzc6SJLXMmq8kSS0z+UqS1LJxt3T00iOyqg7g4M7K//HR3ZU95/BD7uu0/NUr7u+0fICVu5vLqAUdFw9AOo6i6/Jnga8AXH39A3dW1WOmce4X/vLBddfdOyf+/auvf+CTVXXyIoa0z5ZM8j2Ag3lG1nZW/i2v/sXOyp7zil//bKfl/8Yhk9zyubj+zYpu+zCsYkWn5QOsTLcxdF3+LNjPRkVWHPW1ccOvLoo7797JVZ88ZuLfX3nU1/c0VOrULZnkK0laLoqdux1HZ/aZfCVJvVLAroUNMd4520YkSWqZNV9JUu/swmZnSZJaUxQ7ez5AlMlXktQ7XvOVJEn7xJqvJKlXCtjZ85qvyVeS1Ds2O88jyflJ7khyw9C2w5JckeRrzc9D5/nd9c0xX0uyfloxSpL6p4CdVRMvs2Ca13zfC4yOnXk28OmqOh74dPP4YZIcBrwReAbwdOCN8yVpSdLytGsByyyYWvKtqs8Bd49sXgdc0KxfALx4zK++ELiiqu6uqnuAK/jJJC5JUm+1fc33yKra3qzfBhw55pijgVuHHm9ttv2EJBuADQAHcNAihilJmlVF2eFqUlVVSRb06lXVRmAjwKNzWL/fCUnS3inY2fP/+G3f53t7kqMAmp93jDlmG3Ds0ONjmm2SJDUTK3jNd19sAuZ6L68HPjbmmE8CL0hyaNPR6gXNNkmSgLBzAcssmOatRhcDnweelGRrklcCfwH8apKvAb/SPCbJmiTvBqiqu4E/Bb7YLG9ptkmStCRM7ZpvVZ0+z661Y47dDPze0OPzgfOnFJokqccK2NXza76OcCVJ6p1ZaT6elMlXktQrg7Gd+518ndVIkqSWWfOVJPXOrup3zdfkK0nqlaXQ7GzylST1ShF29vyqab+jlyQtS7sqEy97kuTYJJ9NclOSG5O8ptn+piTbklzbLKcO/c7rkmxJ8tUkL9xTGdZ8JUl6uB3AH1bVNUkeBVyd5Ipm3zur6u3DByd5MnAa8PPA44BPJfnZqto5XwEmX0lSr0z7mm8z+972Zv2+JDczz+x6jXXAB6rqAeCbSbYwmI/+8/P9gs3OkqSeCTtrv4kX4Igkm4eWDfOWlBwHPA24qtn06iTXJzm/mX8A9mEq3DnWfJeQXT3v/bcYdlbHY875FrCzup83ZkWsVyxlg1mNFvQe31lVa/Z0UJJHAh8GXltV309yDoO5B6r5+ZfA704SgMlXktQ7077VKMlKBon3/VX1EYCqun1o/98BH28e7vNUuH49lCRpSJIA5wE3V9U7hrYfNXTYbwA3NOubgNOSrEryBOB44Au7K8OarySpV6oyd+12Wp4FvAL4cpJrm22vB05PcgKDZudbgN8fxFM3JvkgcBODntJn7a6nM5h8JUk9NM0+LlX1T4zvwXHZbn7nrcBb97YMk68kqVcGtxr1+6ppv6OXJKmHrPlKknpm6td8p87kK0nqlUW4z7dzJl9JUu/sdD5fSZLa45SCE0rymiQ3NFM1vXbM/iR5VzM90/VJTuwgTEmSpqL1mm+SpwD/nsGMDz8GPpHk41W1ZeiwUxiMEHI88AzgnOanJEns6nmHqy6i/zngqqq6v6p2AP8DeMnIMeuAC2vgSmD1yLBekqRlau4+30mXWdBFFDcAz0lyeJKDgFN5+IDUsJfTMyXZMDcl1IM8MLWAJUmzowg7a/JlFrTe7FxVNyd5G3A58EPgWmC3Y2Du5lwbgY0Aj85hHc8lJ0nS3umk/l1V51XVL1TVc4F7gH8eOWSfp2eSJC0fu9hv4mUWdNXb+bHNz8czuN570cghm4Azml7PJwH3VtX2lsOUJM2gKthZ+028zIKu7vP9cJLDgQcZTL30vSSvAqiqcxnMHHEqsAW4HzizozglSTMnU53VqA2dJN+qes6YbecOrRdwVqtBSZJ6oWBmarCT6nf0kiT1kMNLSpJ6Z1bu152UyVeS1CtF2DUj9+tOyuQrSeoda76SJLWocGxnSZK0j6z5SpJ6Juz0Pl9JktqzFJqdTb6SpN6x5is1+t71fzHsovvJtXaxq9Py92NFp+UD7KxuX4Oe5wW1wOQrSeqVqtjsLElS2/o+trPJV5LUKwXOaiRJUrvS+5pvv6OXJKmHrPlKknplcJ+vzc6SJLXKiRUkSWqRUwpKktSBXT2v+fY7ekmSeqiT5JvkD5LcmOSGJBcnOWBk/6oklyTZkuSqJMd1EackafZUwc7KxMssaD35Jjka+D+BNVX1FGAFcNrIYa8E7qmqJwLvBN7WbpSSpFm2qzLxMgu6anbeHzgwyf7AQcB3RvavAy5o1i8F1iaZjVdMktSpQYer/SZeZkHrUVTVNuDtwLeB7cC9VXX5yGFHA7c2x+8A7gUObzNOSZKmpYtm50MZ1GyfADwOODjJb094rg1JNifZ/CAPLGaYkqQZtpNMvMyCLurfvwJ8s6q+W1UPAh8BfnHkmG3AsQBN0/QhwF2jJ6qqjVW1pqrWrGTVlMOWJM2CuRGuvOa7b74NnJTkoOY67lrg5pFjNgHrm/WXAp+pqu5nKZckzYD+X/NtfZCNqroqyaXANcAO4EvAxiRvATZX1SbgPOB9SbYAd/OTvaElScuYUwpOoKreCLxxZPMbhvb/CHhZq0FJktQSh5eUJPXK3CAbfWbylST1zqxcu52UyVeS1CvOaiRJUgf63uGq3/V2SZJ6yJqvJKlX5gbZ6DOTrySpd/re4arf0UuSlp8FDC25NzXmJMcm+WySm5q551/TbD8syRVJvtb8PLTZniTvauagvz7JiXsqw+QrSdLD7QD+sKqeDJwEnJXkycDZwKer6njg081jgFOA45tlA3DOngow+UqSeqUY9HaedNnj+au2V9U1zfp9DOYfOJqHzzV/AfDiZn0dcGENXAmsTnLU7srwmu9imYFpH3Z2fA1kFqbq2tV1AGLXDPwx7NfxZ3FndftJXJGlX69aYIerI5JsHnq8sao2jjswyXHA04CrgCOranuz6zbgyGb9oTnoG1ubbduZh8lXktQri9Db+c6qWrOng5I8Evgw8Nqq+v5gIr4mhqpKMvE3TZOvJKl3pn2rUZKVDBLv+6vqI83m25McVVXbm2blO5rtD81B3zim2Tavpd82IUnSPmjmmj8PuLmq3jG0a3iu+fXAx4a2n9H0ej4JuHeoeXosa76SpF5pYWznZwGvAL6c5Npm2+uBvwA+mOSVwLeAlzf7LgNOBbYA9wNn7qkAk68kqXemObZzVf0TzFvA2jHHF3DWvpRh8pUk9Us5vKQkSa1aCmM72+FKkqSWWfOVJPVO32u+Jl9JUq+00Nt56lpvdk7ypCTXDi3fT/LakWP2eYYISdLyUZWJl1nQes23qr4KnACQZAWDUUA+OnLY8AwRz2AwQ8Qz2otSkqTp6brZeS3w9ar61sj2h2aIAK5MsnpuSK/2Q5QkzZpp3ufbhq6T72nAxWO279UMEUk2MJg7kQM4aEohSpJmSS2B+3w7u9UoySOAFwEfmvQcVbWxqtZU1ZqVrFq84CRJM81rvpM7Bbimqm4fs2+fZ4iQJC0X9nZeiNMZ3+QME8wQIUlSX3RS801yMPCrwO8PbXsVQFWdywQzREiSlo9ZaT6eVCfJt6p+CBw+su3cofV9niFCkrQ8LIWxnbvu7SxJ0r6pQY/nPjP5SpJ6p+/3+TqrkSRJLbPmK0nqlcIOV5Iktaz/9/mafCVJvdP3Dlde85UkqWXWfCVJveM1X0mSWlRl8pUkqXV2uNLM6PrDuHMGuhDspNteGA+yq9PyATp+CVg5A/8Tu34X9uv4b2FX7ey0/DbY4UqSJO0Ta76SpN7xmq8kSS0qYvKVJKltPb/ka/KVJPXMErjVyA5XkiS1zJqvJKl/et7ubPKVJPVO35udTb6SpN5xkA1JkrRPOkm+SVYnuTTJV5LcnOSZI/uT5F1JtiS5PsmJXcQpSZo9xaDZedJlFnTV7PzXwCeq6qVJHgEcNLL/FOD4ZnkGcE7zU5K03BUwI0l0Uq0n3ySHAM8Ffgegqn4M/HjksHXAhVVVwJVNTfmoqtrearCSpJnkNd999wTgu8B7knwpybuTHDxyzNHArUOPtzbbHibJhiSbk2x+kAemF7EkabbUApYZ0EXy3R84ETinqp4G/BA4e5ITVdXGqlpTVWtWsmoxY5QkaWq6SL5bga1VdVXz+FIGyXjYNuDYocfHNNskScve5J2tZqXDVevJt6puA25N8qRm01rgppHDNgFnNL2eTwLu9XqvJOkhPW927qq3838A3t/0dP4GcGaSVwFU1bnAZcCpwBbgfuDMjuKUJM2aJTCxQifJt6quBdaMbD53aH8BZ7UZkyRJbXF4SUlS/8xI8/GkTL6SpB6y2VmSpHZZ85UkqWU9T77OaiRJUsus+UqS+sWJFSRJap8TK0iS1LYpjnCV5PwkdyS5YWjbm5JsS3Jts5w6tO91zfzzX03ywr0J35qvJKl/ptvs/F7gb4ALR7a/s6rePrwhyZOB04CfBx4HfCrJz1bVzt0VYPJdJJmBJpCdHTdkPFjdN6Q82PH7sHIWumBmV7flz8BL0LX9fBF6rao+l+S4vTx8HfCBqnoA+GaSLcDTgc/v7pe6/28pSdI+Sk2+AEfMzQXfLBv2sthXJ7m+aZY+tNm2V/PPjzL5SpL6ZSHXewfJ9865ueCbZeNelHoO8DPACcB24C8X8hRsdpYk9Uxav9Woqm5/qPTk74CPNw8nmn/emq8kSXuQ5Kihh78BzPWE3gSclmRVkicAxwNf2NP5rPlKkvpnin3aklwMPI/BteGtwBuB5yU5oSn5FuD3AarqxiQfBG4CdgBn7amnM5h8JUl9NMXkW1Wnj9l83m6Ofyvw1n0pw+QrSeqfnt/NZfKVJPXLEhjb2Q5XkiS1zJqvJKl3ZmFUwYXoJPkmuQW4D9gJ7KiqNSP7A/w1cCpwP/A7VXVN23FKkmaUyXdiv1xVd86z7xQG90odDzyDwcgiz2grMEmSpmmfr/kmeXaSv51GMEPWARfWwJXA6pEbnCVJy9gCx3bu3F4l3yRPS/JfmubiPwW+ssByC7g8ydXzDGg90UDVkiT1wbzNzkl+Fji9We4ELgFSVb+8COU+u6q2JXkscEWSr1TV5/b1JE3i3gBwAActQliSpF5YwrcafQV4PvDrVfXsqvp/GXSQWrCq2tb8vAP4KIO5D4ft1UDVVbVxblaKlaxajNAkSbNu4bMadW53yfclDKZN+mySv0uyFljwV40kByd51Nw68AL+dYDqOZuAMzJwEnBvVW1faNmSpCWi58l33mbnqvoH4B+aBLkOeC3w2CTnAB+tqssnLPNI4KODu4nYH7ioqj6R5FVNuecClzG4zWgLg1uNzpywLEmSZs4ebzWqqh8CFwEXJTkUeBnwx8BEybeqvgE8dcz2c4fWCzhrkvNLkpa+Wem1PKl9utWoqu5prrOunVZAkiTt0VJtdpYkaWbNSBKdlMlXktQrszRYxqSc1UiSpJZZ85Uk9U/PB9kw+UqS+qfnzc4mX0lS7/T9mq/JV5LUPz1Pvna4kiSpZdZ8JUn9sgRuNTL5LpZdXQcAD+zq9u38Ua3stPxBDA90HEH3H4SVHbfHPTgD7YHLvUlvRfrdE3ivdP8xWxCTrySpf3qefJf7F0RJklpnzVeS1Dt9v+ZrzVeSpJZZ85Uk9U/Pa74mX0lSvyyBW41sdpYkqWXWfCVJ/dPzmq/JV5LUPyZfSZLaE7zmO7EkK5J8KcnHx+xbleSSJFuSXJXkuA5ClCTNqlrAMgO67HD1GuDmefa9Erinqp4IvBN4W2tRSZI0ZZ0k3yTHAL8GvHueQ9YBFzTrlwJrk+UwUrgkaY+aW40mXWZBVzXfvwL+iPmngDkauBWgqnYA9wKHjx6UZEOSzUk2P0jXs9lIklpjs/O+SfLrwB1VdfVCz1VVG6tqTVWtWcmqRYhOktQLJt999izgRUluAT4APD/J348csw04FiDJ/sAhwF1tBilJ0rS0nnyr6nVVdUxVHQecBnymqn575LBNwPpm/aXNMTPyfUWS1LW+X/Odmft8k7wF2FxVm4DzgPcl2QLczSBJS5I0MCNJdFKdJt+q+kfgH5v1Nwxt/xHwsm6ikiTNtBm6djupman5SpK0t2al+XhSzmokSVLLrPlKkvqn5zVfk68kqXf63uxs8pUk9Y/JV5KkFi2B3s52uJIkqWXWfCVJvZJm6TNrvpKk/pnixApJzk9yR5IbhrYdluSKJF9rfh7abE+SdyXZkuT6JCfuTfgmX0lS70x5bOf3AiePbDsb+HRVHQ98unkMcApwfLNsAM7ZmwJsdl4k++3sOgL43oMHdlr+d3c8utPyZ8EBebDrEFiZ+abJbseKeafpbjOGbnvj7Nf3+2CWuar6XJLjRjavA57XrF/AYGjkP262X9hM/nNlktVJjqqq7bsrw5qvJKl/FtbsfESSzUPLhr0o8cihhHobcGSzfjRw69BxW5ttu2XNV5LUPwtrXLizqtZMXHRVJQtr3rDmK0nqlwVc711Ayrw9yVEAzc87mu3bgGOHjjum2bZbJl9JUv9MsbfzPDYB65v19cDHhraf0fR6Pgm4d0/Xe8FmZ0mSHibJxQw6Vx2RZCvwRuAvgA8meSXwLeDlzeGXAacCW4D7gTP3pgyTrySpd6bZobyqTp9n19oxxxZw1r6WYfKVJPVPz+/mMvlKknqn77dS2+FKkqSWWfOVJPWLUwruuyQHJPlCkuuS3JjkzWOOWZXkkmag6qvGDPMlSVrO2r/VaFF10ez8APD8qnoqcAJwcnNv1LBXAvdU1ROBdwJvazdESdKsCp0MsrGoWk++NfCD5uHKZhl9OdYxGLga4FJgbZK+T98oSVos1nz3XZIVSa5lMDzXFVV11cghDw1UXVU7gHuBw8ecZ8PcwNgP8sCUo5YkaXF0knyramdVncBgDMynJ3nKhOfZWFVrqmrNSlYtaoySpNmVqomXWdDprUZV9T3gs/zkpMUPDVSdZH/gEOCuVoOTJM2mhTQ5z0bu7aS382OSrG7WDwR+FfjKyGHDA1i/FPhMM4SXJEm973DVxX2+RwEXJFnBIPl/sKo+nuQtwOaq2gScB7wvyRbgbuC0DuKUJM2qGUmik2o9+VbV9cDTxmx/w9D6j4CXtRmXJEltcYQrSVLvzErz8aRMvpKk/jH5SpLUohnqODUpZzWSJKll1nwlSf3T85qvyVeS1CtzEyv0mclXktQ/PR93yeQrSeqdvtd87XAlSVLLrPkukpXf7zoCuO67R3cdQudWr/yXTstftd+OTssHWMGuTsvfbwaqJCvS7WvQtf1mojfStumdeoYmSJiUyVeS1Dt9/35l8pUk9Y81X0mS2jUDVzcWxA5XkiS1zJqvJKlfCu/zlSSpbX1vdjb5SpL6p+fJ12u+kiS1zJqvJKlXnFhBkqS2VfW+w1Xrzc5Jjk3y2SQ3JbkxyWvGHJMk70qyJcn1SU5sO05J0uxKTb7Mgi5qvjuAP6yqa5I8Crg6yRVVddPQMacAxzfLM4Bzmp+SJNnhal9V1faquqZZvw+4GRidEWAdcGENXAmsTnJUy6FKkjQVnV7zTXIc8DTgqpFdRwO3Dj3e2mzb3k5kkqRZNivNx5PqLPkmeSTwYeC1VTXRhHxJNgAbAA7goEWMTpI0swrY1e/s28l9vklWMki876+qj4w5ZBtw7NDjYxgzOWRVbayqNVW1ZiWrphOsJGn21AKWGdBFb+cA5wE3V9U75jlsE3BG0+v5JODeqrLJWZIE2Nt5Es8CXgF8Ocm1zbbXA48HqKpzgcuAU4EtwP3Ame2HKUnSdLSefKvqnxgMULK7Ywo4q52IJEm90/NBNhzhSpLUO7PSfDwpk68kqV9mqOPUpJzVSJKkllnzlST1ymBWo35XfU2+kqT+2dV1AAtj8pUk9Y41X0mS2mSHK0mStK+s+UqSeqYcZEOSpLZNe5CNJLcA9wE7gR1VtSbJYcAlwHHALcDLq+qeSc5v8l0kh9/4465D4C4O77T8zz+62/IBdq3oOIAZuJBTux28dZnwNZgB/3W6p2+n5vvLVXXn0OOzgU9X1V8kObt5/MeTnHgG/lVIkrQPCrJr8mUB1gEXNOsXAC+e9EQmX0nScnNEks1Dy4YxxxRweZKrh/YfOTS97W3AkZMGYLOzJKl/FtbsfGdVrdnDMc+uqm1JHgtckeQrDy++Kpn8yrM1X0lS/9QClr05fdW25ucdwEeBpwO3JzkKoPl5x6Thm3wlSb2TqomXPZ47OTjJo+bWgRcANwCbgPXNYeuBj00av83OkiQ93JHAR5PAIE9eVFWfSPJF4INJXgl8C3j5pAWYfCVJ/TPFW42q6hvAU8dsvwtYuxhlmHwlSf1SOKuRJEltCnt37XaWmXwlSf3T8+TbSW/nJOcnuSPJDfPsT5J3JdmS5PokJ7YdoyRJ09LVrUbvBU7ezf5TgOObZQNwTgsxSZL6omryZQZ0knyr6nPA3bs5ZB1wYQ1cCayeu7FZkrTMzXW4mnSZAbN6zfdo4Nahx1ubbduHD2rG29wAcAAHtRacJKlbdrjqUFVtBDYCPDqH9fudkCTtvZ4n31kdXnIbcOzQ42OabZIk9d6sJt9NwBlNr+eTgHuHpnGSJC1rC+hsNSM15k6anZNcDDyPwZyKW4E3AisBqupc4DLgVGALcD9wZhdxSpJmUDEzSXRSnSTfqjp9D/sLOKulcCRJfTMjvZYnNavNzpIkLVm97u0sSVqevNVIkqS2mXwlSWpRAbtMvpIktWh2bhmalB2uJElqmTVfSVL/9Lzma/KVJPWPyVeSpBbZ4UqSpLYVVL+HuDL5LpKVl2/uOgT+zeVdRyBJA1u6DmDGmXwlSf3jNV9JklrkNV9JkjrQ85qvg2xIktQya76SpP7pec3X5CtJ6pn+j+1s8pUk9UsBu7zPV5KkdvW85muHK0mSWmbNV5LUP9Z8912Sk5N8NcmWJGeP2b8qySXN/quSHNdBmJKkmVSDQTYmXWZA68k3yQrgb4FTgCcDpyd58shhrwTuqaonAu8E3tZulJKkmVVQtWviZRZ0UfN9OrClqr5RVT8GPgCsGzlmHXBBs34psDZJWoxRkqSp6SL5Hg3cOvR4a7Nt7DFVtQO4Fzh89ERJNiTZnGTzgzwwpXAlSTOn583Ove5wVVUbgY0Aj85hs/GKSpKmr+cdrrpIvtuAY4ceH9NsG3fM1iT7A4cAd7UTniRpplX1fpCNLpqdvwgcn+QJSR4BnAZsGjlmE7C+WX8p8Jmqnn/NkSQtnqrJlxnQes23qnYkeTXwSWAFcH5V3ZjkLcDmqtoEnAe8L8kW4G4GCVqSpCWhk2u+VXUZcNnItjcMrf8IeFnbcUmS+qF63uzc6w5XkqTlaHaajydl8pUk9UsxM7cMTcrkK0nqnxkZqWpSzmokSVLLrPlKknqlgLLZWZKkFlX1vtnZ5CtJ6p2+13y95itJUsus+UqS+qfnzc5ZKkMmJ/ku8K0FnuYI4M5FCMfy+xtD1+XPQgxdlz8LMXRd/izEsNDyf6qqHrNYwQxL8gkG8U3qzqo6ebHimcSSSb6LIcnmqlpj+d3pOoauy5+FGLoufxZi6Lr8WYih6/KXOq/5SpLUMpOvJEktM/k+3EbL71zXMXRdPnQfQ9flQ/cxdF0+dB9D1+UvaV7zlSSpZdZ8JUlq2bJLvklOTvLVJFuSnD1m/6oklzT7r0py3CKXf36SO5LcMM/+JHlXU/71SU5c5PKPTfLZJDcluTHJazqI4YAkX0hyXRPDm8ccM9X3oSljRZIvJfl4R+XfkuTLSa5NsnnM/mm/D6uTXJrkK0luTvLMlst/UvPc55bvJ3ltyzH8QfMZvCHJxUkOGNk/7f8Hr2nKvnH0uTf7F/35j/sflOSwJFck+Vrz89B5fnd9c8zXkqxfaCzLWlUtmwVYAXwd+GngEcB1wJNHjvk/gHOb9dOASxY5hucCJwI3zLP/VOC/AwFOAq5a5PKPAk5s1h8F/POY12DaMQR4ZLO+ErgKOKnN96E57/8FXAR8fMy+Nsq/BThiN/un/T5cAPxes/4IYHWb5Y+UtQK4jcG9oa3EABwNfBM4sHn8QeB32vocAE8BbgAOYjDg0aeAJ077+Y/7HwT8Z+DsZv1s4G1jfu8w4BvNz0Ob9UOn9ZlY6styq/k+HdhSVd+oqh8DHwDWjRyzjsE/JYBLgbVJslgBVNXngLt3c8g64MIauBJYneSoRSx/e1Vd06zfB9zM4J9QmzFUVf2gebiyWUY7H0z1fUhyDPBrwLvnOWSq5e+lqb0PSQ5h8E/4PICq+nFVfa+t8sdYC3y9qkYHypl2DPsDBybZn0ES/M6Y8qf1Ofg5Bsn0/qraAfwP4CVjyl/U5z/P/6Dh53kB8OIxv/pC4Iqquruq7gGuADodqKLPllvyPRq4dejxVn4y8Tx0TPMHcS9weCvRjZTfGBfjomia0J7GoObZagxNk++1wB0M/qDnjWFK78NfAX8EzDdGXRufgwIuT3J1kg27i6GxmO/DE4DvAu9pmt7fneTgFssfdRpw8ZjtU4uhqrYBbwe+DWwH7q2qy+crfwqfgxuA5yQ5PMlBDGq5x85XfmNa78GRVbW9Wb8NOHLMMW1+Hpa85ZZ81UjySODDwGur6vttl19VO6vqBOAY4OlJntJW2Ul+Hbijqq5uq8x5PLuqTgROAc5K8twWy96fQdPjOVX1NOCHDJobW5fkEcCLgA+1XO6hDGp8TwAeBxyc5LfbKr+qbgbeBlwOfAK4FtjZVvnzqariJ1uitMiWW/LdxsO/WR7TbBt7TNMUdQhwVyvRjZTfGBfjgiRZySDxvr+qPtJFDHOaps7P8pPNV9N8H54FvCjJLQwuPTw/yd+3WD7wUM2LqroD+CiDyyJjY2gs5vuwFdg61OJwKYNk3Fb5w04Brqmq28fsm2YMvwJ8s6q+W1UPAh8BfnG+8qfxOaiq86rqF6rqucA9DPpgjC2/Ma334Pa55uzm5x1jjmnt/8JysNyS7xeB45M8ofm2fRqwaeSYTcBcL76XAp9pvgm2ZRNwRtPL8SQGTWHb9/RLe6u5XnUecHNVvaOjGB6TZHWzfiDwq8BXxsQwlfehql5XVcdU1XEMPgOfqarRGs9UPwdJDk7yqLl14AUMmiFHY5jK+1BVtwG3JnlSs2ktcFNb5Y84nfFNztOO4dvASUkOav4u1jLoAzFa/jQ/B49tfj6ewfXei8aU38Z7MPw81wMfG3PMJ4EXJDm0aTV4QbNNk+iqp1dXC4PrKv/MoNfznzTb3gK8qFk/gEHz1xbgC8BPL3L5FzO4vvQgg9rHK4FXAa9q9gf42ya+LwNrFrn8ZzNoUrqeQTPXtc1r0mYM/w74UhPDDcAb2n4fhmJ5Hk1v55Y/Bz/NoLf9dcCNQ5/FNt+HE4DNzfvwDwx6sLZWflPGwQxqkocMbWvzNXgzgy9+NwDvA1a1/Dn4nwy+9FwHrG3j+TP+f9DhwKeBrzHodX1Yc+wa4N1Dv/u7zWuxBThzsT8Py2lxhCtJklq23JqdJUnqnMlXkqSWmXwlSWqZyVeSpJaZfCVJapnJV5oBSXZmMLPPdUmuSTI62IOkJcRbjaQZkOQHVfXIZv2FwOur6pc6DkvSlFjzlWbPoxkMNShpidq/6wAkAYNp7a5lMKLSUcDzuw1H0jTZ7CzNgJFm52cymGf4KeUfqLQk2ewszZiq+jxwBPCYrmORNB0mX2nGJPm3wArancpSUou85ivNhrlrvjCYyWZ9VXU+sbqk6fCaryRJLbPZWZKklpl8JUlqmclXkqSWmXwlSWqZyVeSpJaZfCVJapnJV5Kklpl8JUlq2f8P5lk+UrM0HiwAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "#AND Logic\n", "A = Species(\"A\") ;B = Species(\"B\") #Inducers\n", "\n", "#Create the Combinatorial Promoter\n", "Prom_AND = CombinatorialPromoter(\"combinatorial_promoter\",[A,B], tx_capable_list = [[A,B]], leak = True) #the Combination A and B can be transcribed\n", "AND_assembly = DNAassembly(\"AND\",promoter=Prom_AND,rbs=\"medium\",protein=\"GFP\")\n", "#Use an Expression Mixture to focus on Logic, not Transcription & Translation\n", "\n", "M = ExpressionExtract(name=\"expression\", parameter_file = \"default_parameters.txt\", components=[AND_assembly])\n", "CRN = M.compile_crn(); print(CRN.pretty_print(show_rates = True, show_keys = False))\n", "\n", "#Lets titrate A and B\n", "try:\n", " import bioscrape\n", "except ModuleNotFoundError:\n", " print('please install the plotting libraries: pip install biocrnpyler[all]')\n", "else:\n", " import numpy as np\n", " import pylab as plt\n", " import pandas as pd\n", " \n", " plt.figure(figsize = (8, 6))\n", " N = 11 #Number of titrations\n", " max_titration = 10\n", " HM = np.zeros((N, N))\n", " for a_ind, A_c in enumerate(np.linspace(0, max_titration, N)):\n", " for b_ind, B_c in enumerate(np.linspace(0, max_titration, N)):\n", " x0 = {AND_assembly.dna:1, A:A_c, B:B_c}\n", " timepoints = np.linspace(0, 1000, 1000)\n", " R = CRN.simulate_with_bioscrape_via_sbml(timepoints, initial_condition_dict = x0)\n", " HM[a_ind, b_ind] = R[\"protein_GFP\"][len(timepoints)-1]\n", "\n", " plt.title(\"AND Endpoint Heatmap\")\n", " cb = plt.pcolor(HM)\n", " plt.colorbar(cb)\n", " plt.xlabel(\"B\")\n", " plt.ylabel(\"A\")\n", " plt.xticks(np.arange(.5, N+.5, 1), [str(i) for i in np.linspace(0, max_titration, N)])\n", " plt.yticks(np.arange(.5, N+.5, 1), [str(i) for i in np.linspace(0, max_titration, N)])" ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "slideshow": { "slide_type": "subslide" }, "tags": [] }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\ipykernel\\ipkernel.py:287: DeprecationWarning: `should_run_async` will not call `transform_cell` automatically in the future. Please pass the result to `transformed_cell` argument and any exception that happen during thetransform in `preprocessing_exc_tuple` in IPython 7.17 and above.\n", " and should_run_async(code)\n", "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\biocrnpyler-1.1.0-py3.7.egg\\biocrnpyler\\parameter.py:507: UserWarning: parameter file contains no unit column! Please add a column named ['unit', 'units'].\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "DNAassembly: OR\n", "Species(N = 7) = {\n", "dna[OR] (@ 0), protein[GFP] (@ 0), complex[2x_B:dna[OR]] (@ 0), B (@ 0), complex[2x_A:dna[OR]] (@ 0), complex[2x_A:2x_B:dna[OR]] (@ 0), A (@ 0), \n", "}\n", "\n", "Reactions (7) = [\n", "0. 2A+dna[OR] <--> complex[2x_A:dna[OR]]\n", " Kf=k_forward * A^2 * dna_OR\n", " Kr=k_reverse * complex_A_2x_dna_OR_\n", " k_forward=100.0\n", " k_reverse=10.0\n", "\n", "1. 2B+dna[OR] <--> complex[2x_B:dna[OR]]\n", " Kf=k_forward * B^2 * dna_OR\n", " Kr=k_reverse * complex_B_2x_dna_OR_\n", " k_forward=100.0\n", " k_reverse=10.0\n", "\n", "2. 2A+complex[2x_B:dna[OR]] <--> complex[2x_A:2x_B:dna[OR]]\n", " Kf=k_forward * A^2 * complex_B_2x_dna_OR_\n", " Kr=k_reverse * complex_A_2x_B_2x_dna_OR_\n", " k_forward=100.0\n", " k_reverse=10.0\n", "\n", "3. 2B+complex[2x_A:dna[OR]] <--> complex[2x_A:2x_B:dna[OR]]\n", " Kf=k_forward * B^2 * complex_A_2x_dna_OR_\n", " Kr=k_reverse * complex_A_2x_B_2x_dna_OR_\n", " k_forward=100.0\n", " k_reverse=10.0\n", "\n", "4. complex[2x_A:dna[OR]] --> complex[2x_A:dna[OR]]+protein[GFP]\n", " Kf=k_forward * complex_A_2x_dna_OR_\n", " k_forward=0.28125\n", "\n", "5. complex[2x_B:dna[OR]] --> complex[2x_B:dna[OR]]+protein[GFP]\n", " Kf=k_forward * complex_B_2x_dna_OR_\n", " k_forward=0.28125\n", "\n", "6. complex[2x_A:2x_B:dna[OR]] --> complex[2x_A:2x_B:dna[OR]]+protein[GFP]\n", " Kf=k_forward * complex_A_2x_B_2x_dna_OR_\n", " k_forward=0.28125\n", "\n", "]\n" ] }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "#Create OR Logic\n", "Prom_OR = CombinatorialPromoter(\"combinatorial_promoter\",[A,B], leak=False,\n", " tx_capable_list = [[A,B], [A], [B]]) #the Combinations A and B or just A or just B be transcribed\n", "\n", "ORassembly = DNAassembly(\"OR\",promoter=Prom_OR,rbs=\"medium\",protein=\"GFP\")\n", "print(ORassembly)\n", "#Use an Expression Mixture to focus on Logic, not Transcription & Translation\n", "M = ExpressionExtract(name=\"expression\", parameter_file = \"default_parameters.txt\", components=[ORassembly])\n", "CRN = M.compile_crn()\n", "print(CRN.pretty_print(show_rates = True, show_keys = False))\n", "\n", "#Lets titrate A and B\n", "try:\n", " import bioscrape \n", "except ModuleNotFoundError:\n", " print('please install the plotting libraries: pip install biocrnpyler[all]')\n", "else:\n", " import numpy as np\n", " import pylab as plt\n", " import pandas as pd\n", " plt.figure(figsize = (6, 6))\n", " N = 11 #Number of titrations\n", " max_titration = 10\n", " HM = np.zeros((N, N))\n", " for a_ind, A_c in enumerate(np.linspace(0, max_titration, N)):\n", " for b_ind, B_c in enumerate(np.linspace(0, max_titration, N)):\n", " x0 = {ORassembly.dna:1, A:A_c, B:B_c}\n", " timepoints = np.linspace(0, 1000, 1000)\n", " R = CRN.simulate_with_bioscrape_via_sbml(timepoints, initial_condition_dict = x0)\n", " HM[a_ind, b_ind] = R[\"protein_GFP\"][len(timepoints)-1]\n", " plt.title(\"OR Endpoint Heatmap\")\n", " cb = plt.pcolor(HM)\n", " plt.colorbar(cb)\n", " plt.xlabel(\"B\")\n", " plt.ylabel(\"A\")\n", " plt.xticks(np.arange(.5, N+.5, 1), [str(i) for i in np.linspace(0, max_titration, N)])\n", " plt.yticks(np.arange(.5, N+.5, 1), [str(i) for i in np.linspace(0, max_titration, N)])\n", " " ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "slideshow": { "slide_type": "subslide" }, "tags": [] }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\ipykernel\\ipkernel.py:287: DeprecationWarning: `should_run_async` will not call `transform_cell` automatically in the future. Please pass the result to `transformed_cell` argument and any exception that happen during thetransform in `preprocessing_exc_tuple` in IPython 7.17 and above.\n", " and should_run_async(code)\n", "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\biocrnpyler-1.1.0-py3.7.egg\\biocrnpyler\\parameter.py:507: UserWarning: parameter file contains no unit column! Please add a column named ['unit', 'units'].\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Species(N = 7) = {\n", "dna[XOR] (@ 0), protein[GFP] (@ 0), complex[2x_B:dna[XOR]] (@ 0), B (@ 0), complex[2x_A:dna[XOR]] (@ 0), complex[2x_A:2x_B:dna[XOR]] (@ 0), A (@ 0), \n", "}\n", "\n", "Reactions (6) = [\n", "0. 2A+dna[XOR] <--> complex[2x_A:dna[XOR]]\n", " Kf=k_forward * A^2 * dna_XOR\n", " Kr=k_reverse * complex_A_2x_dna_XOR_\n", " k_forward=100.0\n", " k_reverse=10.0\n", "\n", "1. 2B+dna[XOR] <--> complex[2x_B:dna[XOR]]\n", " Kf=k_forward * B^2 * dna_XOR\n", " Kr=k_reverse * complex_B_2x_dna_XOR_\n", " k_forward=100.0\n", " k_reverse=10.0\n", "\n", "2. 2A+complex[2x_B:dna[XOR]] <--> complex[2x_A:2x_B:dna[XOR]]\n", " Kf=k_forward * A^2 * complex_B_2x_dna_XOR_\n", " Kr=k_reverse * complex_A_2x_B_2x_dna_XOR_\n", " k_forward=100.0\n", " k_reverse=10.0\n", "\n", "3. 2B+complex[2x_A:dna[XOR]] <--> complex[2x_A:2x_B:dna[XOR]]\n", " Kf=k_forward * B^2 * complex_A_2x_dna_XOR_\n", " Kr=k_reverse * complex_A_2x_B_2x_dna_XOR_\n", " k_forward=100.0\n", " k_reverse=10.0\n", "\n", "4. complex[2x_A:dna[XOR]] --> complex[2x_A:dna[XOR]]+protein[GFP]\n", " Kf=k_forward * complex_A_2x_dna_XOR_\n", " k_forward=0.28125\n", "\n", "5. complex[2x_B:dna[XOR]] --> complex[2x_B:dna[XOR]]+protein[GFP]\n", " Kf=k_forward * complex_B_2x_dna_XOR_\n", " k_forward=0.28125\n", "\n", "]\n" ] }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "#Create XOR Logic\n", "Prom_XOR = CombinatorialPromoter(\"combinatorial_promoter\",[A,B], leak=False,\n", " tx_capable_list = [[A], [B]]) #the Combinations just A or just B can be transcribed\n", "\n", "XORassembly = DNAassembly(\"XOR\",promoter=Prom_XOR,rbs=\"medium\",protein=\"GFP\")\n", "\n", "#Use an Expression Mixture to focus on Logic, not Transcription & Translation\n", "M = ExpressionExtract(name=\"expression\", parameter_file = \"default_parameters.txt\", components=[XORassembly])\n", "CRN = M.compile_crn()\n", "print(CRN.pretty_print(show_rates = True, show_keys = False))\n", "\n", "#Lets titrate A and B\n", "try:\n", " import bioscrape \n", "except ModuleNotFoundError:\n", " print('please install the plotting libraries: pip install biocrnpyler[all]')\n", "else:\n", " import numpy as np\n", " import pylab as plt\n", " import pandas as pd\n", " \n", " plt.figure(figsize = (6, 6))\n", " N = 11 #Number of titrations\n", " max_titration = 10\n", " HM = np.zeros((N, N))\n", " for a_ind, A_c in enumerate(np.linspace(0, max_titration, N)):\n", " for b_ind, B_c in enumerate(np.linspace(0, max_titration, N)):\n", " x0 = {XORassembly.dna:1, A:A_c, B:B_c}\n", " timepoints = np.linspace(0, 1000, 1000)\n", " R = CRN.simulate_with_bioscrape_via_sbml(timepoints, initial_condition_dict = x0)\n", " HM[a_ind, b_ind] = R[\"protein_GFP\"][len(timepoints)-1]\n", " plt.title(\"XOR Endpoint Heatmap\")\n", " cb = plt.pcolor(HM)\n", " plt.colorbar(cb)\n", " plt.xlabel(\"B\")\n", " plt.ylabel(\"A\")\n", " \n", " plt.xticks(np.arange(.5, N+.5, 1), [str(i) for i in np.linspace(0, max_titration, N)])\n", " plt.yticks(np.arange(.5, N+.5, 1), [str(i) for i in np.linspace(0, max_titration, N)])\n", " " ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "celltoolbar": "Slideshow", "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.7.4" } }, "nbformat": 4, "nbformat_minor": 4 }